|
In mathematics and computer science, a higher-order function (also functional, functional form or functor; not to be confused with the functor concept in category theory) is a function that does at least one of the following: * takes one or more functions as arguments, * returns a function as its result. All other functions are ''first-order functions''. In mathematics higher-order functions are also known as ''operators'' or ''functionals''. The differential operator in calculus is a common example, since it maps a function to its derivative, also a function. In the untyped lambda calculus, all functions are higher-order; in a typed lambda calculus, from which most functional programming languages are derived, higher-order functions are values with types of the form . ==General examples== The map function, found in many functional programming languages, is one example of a higher-order function. It takes as arguments a function ''f'' and a list of elements, and as the result, returns a new list with ''f'' applied to each element from the list. Another very common kind of higher-order function in those languages which support them are sorting functions which take a comparison function as a parameter, allowing the programmer to separate the sorting algorithm from the comparisons of the items being sorted. The C standard function qsort is an example of this.Other examples of higher-order functions include fold, function composition, integration, and the constant-function function λ''x''.λ''y''.''y''.''x''. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Higher-order function」の詳細全文を読む スポンサード リンク
|